iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 10
0
tags: 2019鐵人賽 PHP

前言

學完了基本運算式,今天來聊聊程式語言裡所謂的流程控制,最簡單的流程控制來說就是讓程式作是非題。
而更進一步的就是迴圈:就是讓程式在滿足條件之後才離開流程。

條件控制

條件控制的指令有:

  • if
  • if...else
  • if...elseif...else
  • switch

if

基本表示法如下:

if (條件式) {
    條件成立才執行內容;
}

範例

$user = 'Kao';
if ($user 
== 'Kao') {
    echo 'Hi, Kao';
}

if...else

基本表示法如下:

if (條件式) {
    條件成立才執行內容;
} else {
    條件不成立時執行的內容;
}

範例

<?php
$user = 'SoJ';
if ($user == 'Kao') {
    echo 'Hi, Kao';
} else {
	echo 'Hi, I don\'t know you!';
}

if...elseif...else

基本表示法如下:

if (條件式a) {
    條件a 成立才執行內容;
} elseif (條件b) {
    條件b 成立時執行的內容;
} else {
    條件a ,條件b 都不成立時才執行內容;
}

範例
```php
<?php
$bag_height = 80;
if ($bag_height > 100) {
    echo 'This bag is big size.';
} else if ($bag_height > 40 && $bag_height <= 100) {
	echo 'This bag is middle size.';
} else {
	echo 'This bag is samll size.';
}

switch

基本表示法如下:

switch (自定義變數) {
    case 條件值1:
        自定義變數等於條件值1,就執行的內容;
        break;
    case 條件值2:
        自定義變數等於條件值2,就執行的內容; 
        break;
    .
    .
    .
    default:
        上述條件都不滿足才執行這裡的內容;
}

範例
```php
<?php
$point = ['x' => 1,'y' => -1];
switch($point) {
	case ($point['x']>0 && $point['y']>0):
		echo '第一象限';
		break;
	case ($point['x']<0 && $point['y']>0):
		echo '第二象限';
		break;
	case ($point['x']<0 && $point['y']<0):
		echo '第三象限';
		break;
	case ($point['x']>0 && $point['y']<0):
		echo '第四象限';
		break;
}


迴圈

迴圈的指令有:

  • while
  • do...while
  • for
  • foreach

while

基本表示法如下:

while (條件式) {
    條件成立才執行內容;
}
//直到條件不符合才跳離

範例

<?php
$multiplicand = 2;
$multiplier = 1;
while ($multiplier < 10) {
	echo $multiplicand.' x '.$multiplier.' = '.$multiplicand * $multiplier."</br>";
	$multiplier++;
}

do...while

基本表示法如下:

do {
    執行內容;
} while (條件式);

與 while 的最大差別是,do...while無論條件是否成立都至少會執行一次內容

範例

<?php
$multiplicand = 2;
$multiplier = 1;
do {
	echo $multiplicand.' x '.$multiplier.' = '.$multiplicand * $multiplier."</br>";
	$multiplier++;
} while ($multiplier < 1);

for

基本表示法如下:

for(變數初始值;條件式;變數計次方式) {
    執行內容;
}

範例

<?php
for($i=2;$i<10;$i++){
	for($j=2;$j<10;$j++) {
		echo "$i x $j = ".($i * $j).'</br>';
	}
	echo '--------</br>';
}

foreach

foreach 的一般表示法比較難解釋,foreach 的主要用法是用來遍歷一個 object 或是 array。我們直接看範例。

假設一個名為 $class 的 array,裡面有兩個同學 KaoSoJ 的基本資料(也是一個 array ),我們可以利用 foreach 的遍歷效果,直接將兩個同學的基本資料直接印出來。

<?php
$class = [
	0=>['name' => 'Kao', 'age' => 20],
	1=>['name' => 'SoJ', 'age' => 21]
];

foreach ($class as $profile){
	echo 'name : '.$profile['name'].' ; ';
	echo 'age : '.$profile['age'].'</br>';
}


上一篇
Day 9 - PHP 基礎語法 part II
下一篇
Day 11 - PHP 基礎語法 part IV
系列文
新手後端工程師的學習歷程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言